package secondStage.part6.函数式接口.常用的函数式接口.Supplier接口;

import java.util.function.Supplier;

/**
 * @ClassName: [SupplierDemo]
 * @Description: Supplier接口
 * @Author: [黄劲松]
 * @CreateDate: [2021-04-24]
 * @Version: [v1.0]
 */
/*
1.5 Supplier接口
Supplier<T>:包含一个无参的方法
    T get():获得结果
    该方法不需要参数，它会按照某种实现逻辑(由Lambda表达式实现)返回一个数据
    Supplier<T>接口也被称为生产型接口，如果我们指定了接口的泛型是什么类型，那么接口中的get方法就会生产什么类型的数据供我们使用
 */
public class SupplierDemo {
    public static void main(String[] args) {
        /*String s = getString(()->{
            return "林清玄";
        });*/
        String s = getString(()->"系哦啊梦");
        System.out.println(s);

        Integer i = getInteger(()->900);
        System.out.println(i);
    }
    private static Integer getInteger(Supplier<Integer> sup){
        return sup.get();
    }
    private static String getString(Supplier<String> sup){
        return sup.get();
    }
}
